semantic bug-localization
Neural Attribution for Semantic Bug-Localization in Student Programs
Providing feedback is an integral part of teaching. Most open online courses on programming make use of automated grading systems to support programming assignments and give real-time feedback. These systems usually rely on test results to quantify the programs' functional correctness. They return failing tests to the students as feedback. However, students may find it difficult to debug their programs if they receive no hints about where the bug is and how to fix it. In this work, we present NeuralBugLocator, a deep learning based technique, that can localize the bugs in a faulty program with respect to a failing test, without even running the program. At the heart of our technique is a novel tree convolutional neural network which is trained to predict whether a program passes or fails a given test. To localize the bugs, we analyze the trained network using a state-of-the-art neural prediction attribution technique and see which lines of the programs make it predict the test outcomes. Our experiments show that NeuralBugLocator is generally more accurate than two state-of-the-art program-spectrum based and one syntactic difference based bug-localization baselines.
- Education > Educational Setting > Online (0.83)
- Education > Educational Technology > Educational Software > Computer-Aided Assessment (0.60)
Reviews: Neural Attribution for Semantic Bug-Localization in Student Programs
The paper received excellent reviews and strong acceptance recommendations. However interesting the targeted application is, I personally found that the technical content was low and the level of the experimental section close to the average of the standards of Machine Learning applications. Therefore I recommend acceptance as a poster.
Neural Attribution for Semantic Bug-Localization in Student Programs
Providing feedback is an integral part of teaching. Most open online courses on programming make use of automated grading systems to support programming assignments and give real-time feedback. These systems usually rely on test results to quantify the programs' functional correctness. They return failing tests to the students as feedback. However, students may find it difficult to debug their programs if they receive no hints about where the bug is and how to fix it. In this work, we present NeuralBugLocator, a deep learning based technique, that can localize the bugs in a faulty program with respect to a failing test, without even running the program.
- Education > Educational Setting > Online (0.88)
- Education > Educational Technology > Educational Software > Computer-Aided Assessment (0.63)
Neural Attribution for Semantic Bug-Localization in Student Programs
Gupta, Rahul, Kanade, Aditya, Shevade, Shirish
Providing feedback is an integral part of teaching. Most open online courses on programming make use of automated grading systems to support programming assignments and give real-time feedback. These systems usually rely on test results to quantify the programs' functional correctness. They return failing tests to the students as feedback. However, students may find it difficult to debug their programs if they receive no hints about where the bug is and how to fix it.
- Education > Educational Setting > Online (0.88)
- Education > Educational Technology > Educational Software > Computer-Aided Assessment (0.63)